package org.elsfs.framework.sql;

/**
 * 查询表达式
 *
 * @author zeng
 * @since 0.0.1
 */
public enum SqlExpression {
  /** = */
  eq,
  /** <> */
  ne,
  /** 大于 > */
  gt,
  /** 大于等于 >= */
  ge,
  /** 小于 < */
  it,
  /** <= */
  le,
  /** BETWEEN 值1 AND 值2 between("age", 18, 30)--->age between 18 and 30 */
  between,
  /** NOT BETWEEN 值1 AND 值2 例: notBetween("age", 18, 30)--->age not between 18 and 3 */
  notBetween,
  /** LIKE '%值%' 例: like("name", "王")--->name like '%王%' */
  like,
  /** NOT LIKE '%值%' 例: notLike("name", "王")--->name not like '%王%' */
  notLike,
  /** LIKE '%值' 例: likeLeft("name", "王")--->name like '%王' */
  likeLeft,
  /** LIKE '值%' 例: likeRight("name", "王")--->name like '王%' */
  likeRight,
  /** NOT LIKE '%值' 例: notLikeLeft("name", "王")--->name not like '%王' */
  notLikeLeft,
  /** NOT LIKE '值%' 例: notLikeRight("name", "王")--->name not like '王%' */
  notLikeRight,
  isNull,
  isNotNull,
  in,
  notIn,
  inSql,
  notInSql,
  groupBy,
  orderByAsc,
  orderByDesc,
  orderBy,
  having,
  or,
  and,
  nested,
}
